package sv.gob.mh.dgii.model;

// Generated Dec 12, 2007 3:08:52 PM by Hibernate Tools 3.2.0.CR1

import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TbTipoCambio generated by hbm2java
 */
@Entity
@Table(name = "TB_TIPO_CAMBIO", schema = "CATALOGOS")
public class TbTipoCambio implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private TbTipoCambioId id;
	private TbMoneda tbMoneda;
	private Date fftipoCambio;
	private Double vtipoCambio;
	private String cusuario;
	private Date fhingreso;
	private Date fhmodificacion;

	public TbTipoCambio() {
	}

	public TbTipoCambio(TbTipoCambioId id, TbMoneda tbMoneda,
			Double vtipoCambio, String cusuario, Date fhingreso) {
		this.id = id;
		this.tbMoneda = tbMoneda;
		this.vtipoCambio = vtipoCambio;
		this.cusuario = cusuario;
		this.fhingreso = fhingreso;
	}

	public TbTipoCambio(TbTipoCambioId id, TbMoneda tbMoneda,
			Date fftipoCambio, Double vtipoCambio, String cusuario,
			Date fhingreso, Date fhmodificacion) {
		this.id = id;
		this.tbMoneda = tbMoneda;
		this.fftipoCambio = fftipoCambio;
		this.vtipoCambio = vtipoCambio;
		this.cusuario = cusuario;
		this.fhingreso = fhingreso;
		this.fhmodificacion = fhmodificacion;
	}

	@EmbeddedId
	@AttributeOverrides( {
			@AttributeOverride(name = "cmoneda", column = @Column(name = "C_MONEDA", nullable = false, length = 2)),
			@AttributeOverride(name = "fitipoCambio", column = @Column(name = "FI_TIPO_CAMBIO", nullable = false, length = 7)) })
	public TbTipoCambioId getId() {
		return this.id;
	}

	public void setId(TbTipoCambioId id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_MONEDA", nullable = false, insertable = false, updatable = false)
	public TbMoneda getTbMoneda() {
		return this.tbMoneda;
	}

	public void setTbMoneda(TbMoneda tbMoneda) {
		this.tbMoneda = tbMoneda;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "FF_TIPO_CAMBIO", length = 7)
	public Date getFftipoCambio() {
		return this.fftipoCambio;
	}

	public void setFftipoCambio(Date fftipoCambio) {
		this.fftipoCambio = fftipoCambio;
	}

	@Column(name = "V_TIPO_CAMBIO", nullable = false, precision = 6)
	public Double getVtipoCambio() {
		return this.vtipoCambio;
	}

	public void setVtipoCambio(Double vtipoCambio) {
		this.vtipoCambio = vtipoCambio;
	}

	@Column(name = "C_USUARIO", nullable = false, length = 30)
	public String getCusuario() {
		return this.cusuario;
	}

	public void setCusuario(String cusuario) {
		this.cusuario = cusuario;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "FH_INGRESO", nullable = false, length = 7)
	public Date getFhingreso() {
		return this.fhingreso;
	}

	public void setFhingreso(Date fhingreso) {
		this.fhingreso = fhingreso;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "FH_MODIFICACION", length = 7)
	public Date getFhmodificacion() {
		return this.fhmodificacion;
	}

	public void setFhmodificacion(Date fhmodificacion) {
		this.fhmodificacion = fhmodificacion;
	}

}
